Mobile IP defined in Non-Patent Document 1 and Non-Patent Document 2 is a communication protocol which is provided so that a node called mobile host can move among a plurality of networks while continuing communication. Mobile IP will be summarized as follows.
(Summary of Mobile IP)
In Mobile IP, a mobile host has a universal address called Home Address (hereinafter referred to as HoA) independent of a network to which the mobile host is connected, and a temporarily assigned address called Care of Address (hereinafter referred to as CoA) variable according to a network to which the mobile host is connected.
In Mobile IP, there is defined a node called Home Agent for transferring packets to the mobile host. A network where the home agent is present is called Home Network.
The mobile host transmits a Binding Update message (registration request message in Non-Patent Document 2) with written CoA to the home agent to register the position of the mobile host in the home agent whenever the mobile host moves from one network to another. Upon reception of the registration request message, the home agent transmits a Binding Acknowledge message (registration acknowledge message in Non-Patent Document 2) to the mobile host.
A node called Foreign Agent is defined in Non-Patent Document 2. When a foreign agent is present on the destination network to which the mobile host has moved, the foreign agent performs processing on the aforementioned registration request message and registration acknowledge message between the home agent and the mobile node. The foreign agent relays packet transfer from the home agent to the mobile host as will be described later.
The foreign agent performs some aids for communication between the mobile host connected to the destination network and the home agent. The mobile host and the home agent can however communicate with each other even in the absence of the foreign agent. At the present time, therefore, Mobile IPv4 is often developed on the assumption that there is no foreign agent. In Mobile IPv6, there is no foreign agent (e.g. see Non-Patent Document 1).
For transmitting a packet from the mobile host to another communication host, the packet is transmitted from the mobile host to the communication host directly or indirectly through the home agent.
Since the Binding Update message is functionally synonymous with the registration request message and the Binding Acknowledge message is functionally synonymous with the registration acknowledge message, hereinafter the registration request message will be described as Binding Update message and the registration acknowledge message will be described as Binding Acknowledge message.
In Non-Patent Document 1 and Non-Patent Document 2, for transmission of a packet from the communication host to the mobile host, the communication host designates the HoA of the mobile host as a destination address of the packet and transmits the packet to the mobile host. When the mobile host is absent on the home network but has registered its CoA in the home agent, the packet transmitted from the communication host is intercepted by the home agent on the home network, then given an IP header with the CoA of the mobile host designated as a destination address of the packet, and transferred to the mobile host.
When a Binding Update message transmitted from the mobile host to the communication host can be interpreted by the communication host, the communication host can designate the CoA of the mobile host as a destination address to thereby transmit a packet to the mobile host directly.
(Explicit Multicast System)
Next, an explicit multicast system will described. The explicit multicast system is a multicast system in which a transmitter designates plural receiver's addresses are written in an option header or payload (body of data) of a packet in multicast communication for delivering the packet from the transmitter to the plural receivers.
In the explicit multicast system, the transmitter writes the receivers' addresses in the option header or payload after an IP header and sends out the packet. Incidentally, in this description, a simple expression “packet” means a packet in the explicit multicast system.
A packet forwarding apparatus (hereinafter referred to as router) for supporting the explicit multicast system searches a unicast routing table of the router in accordance with packet-undelivered receivers' addresses written in the packet arriving at the router and gets next hop information. When next hops are different with respect to the packet-undelivered receivers' addresses as will be described later, replicas of the packet are made to prepare a number of packets corresponding to the number of next hops so that the packets are outputted to delivery interfaces corresponding to the next hops.
On this occasion, the router regards receivers' addresses other than the receivers' addresses having one and the same next hop, as packet-delivered addresses on the basis of a result of the searching of the unicast routing table in each of packets sent from the delivery interfaces, so that the router gives delivered marks to the packet-delivered receivers' addresses or deletes the packet-delivered receivers' addresses from the packet.
In the case where a destination address of an IP header of a packet intended to be sent from each interface is a packet-delivered receiver's address, the router selects one from other receivers' (hereinafter referred to as packet-undelivered receivers') addresses than the receivers' addresses regarded as packet-delivered receivers' addresses and writes the selected receiver address as a destination address of the IP header. The router repeats the aforementioned series of processes on the packet-undelivered receivers' addresses as a packet relay process to thereby prevent loop occurrence or duplicate delivery in the packet delivery.
On the other hand, a router not supporting the explicit multicast system performs ordinary unicast routing while referring to only the IP header of the packet.
When the packet then arrives at the receiver, the receiver copies the packet if any packet-undelivered receiver is present in a list of addresses in the packet. One is selected from the packet-undelivered receivers' addresses in the receivers' addresses, and the packet is sent with the selected address as a destination.
The aforementioned mechanism allows the packet to be multicast to all the receivers even when the router on a path does not support the explicit multicast system.
As a typical explicit multicast system, there is an Explicit Multicast system described in Patent Document 1 or Non-Patent Document 3 (hereinafter referred to as XCAST system).
There however arise some problems in the case where the HoA of the mobile host in the Mobile IP is designated in the receivers' addresses written in the packet in the explicit multicast system, because communication using the explicit multicast system is not assumed in the Mobile IP.
Description will be made below with reference to FIGS. 1 to 3 on the assumption that an XCAST system on IPv6 is used as the explicit multicast system. FIG. 1 is a network configuration view. FIG. 2 is a communication sequence view in the background art. FIG. 3 is an XCAST packet configuration view.
In FIG. 1, a source host 100 which serves as a transmitter is connected to a network 106, and a mobile host (receiver a) 102 which serves as a receiver is connected to a destination network 108. A mobile host (receiver b) 103 is connected to a destination network 109, and a receiver c 104 and a receiver d 105 as other hosts are connected to a network 110. A home agent 101 connected to a home network 107 manages the mobile host (receiver a) 102 and the mobile host (receiver b) 103.
The packet format on this occasion is shown in FIG. 3. Reference numerals 302 to 305 designate fields where receivers' addresses are written respectively. Bitmap 301 has bits which correspond to the receivers' addresses written in the fields 302 to 305, in order of bit position from the leading bit. Bitmap 301 is information for indicating whether the packet has been undelivered or delivered to each receiver.
A communication sequence on this occasion is shown in FIG. 2. Nodes on the sequence shown in FIG. 2 correspond to the nodes in FIG. 1 respectively. Assume that there is no router supporting the XCAST on a path from the source host 100 to the home agent, a path from the mobile host (receiver a) 102 to the host (receiver c) 104, and a path from the host (receiver c) 104 to the home agent 101.
(Source Host→Home Agent)
First, the source host 100 transmits a packet 200 which is obtained by setting the address HoAa 302 of the first receiver as a destination address of the IP header 300 at the time of creation of the packet.
(Home Agent→Receiver a)
Next, the home agent 101 intercepts the packet 200 transmitted onto the home network 107, then encapsulates the packet 200 with an IP header of CoAa, i.e. CoA of the mobile host (receiver a) 102 set as a destination, and transfers the encapsulated packet to the mobile host (receiver a) 102.
(Receiver a→Receiver c)
Upon reception of the packet 201, the mobile host (receiver a) 102 changes a bit of Bitmap 301 corresponding to the HoAa 302 in the packet to a value indicating that the packet has been delivered, and checks the Bitmap 301. If there is any packet-undelivered receiver on this occasion, the mobile host (receiver a) 102 transmits a packet 202 by designating an address Ac 303 of the host (receiver c) 104 which will be the first receiver, as a destination address of the IP header 300 of the packet.
(Receiver c→Home Agent)
Upon reception of the packet 202, the host (receiver c) 104 changes a bit of the Bitmap 301 corresponding to the Ac 303 in the packet to a value indicating that the packet has been delivered, and checks the Bitmap 301. If there is any packet-undelivered receiver on this occasion, the host (receiver c) 104 transmits a packet 203 by designating an address HoAb 304 of the mobile host (receiver b) 103 which will be the first receiver, as a destination address of the IP header 300 of the packet.
(Home Agent→Receiver b)
The home agent 101 intercepts the packet 203 transmitted onto the home network 107, then encapsulates a packet 204 with an IP header of CoAb, i.e. CoA of the mobile host (receiver b) 103 set as a destination, and transfers the encapsulated packet 204 to the mobile host (receiver b) 103.
(Receiver b→Receiver d)
Upon reception of the packet 204, the mobile host (receiver b) 103 changes a bit of the Bitmap 301 corresponding to the HoAb 304 in the packet to a value indicating that the packet has been delivered, and checks the Bitmap 301. If there is any packet-undelivered receiver on this occasion, the mobile host (receiver b) 103 transmits a packet 205 by designating an address Ad 305 of the host (receiver d) 105 which will be the first receiver, as a destination address of the IP header 300 of the packet.
Upon reception of the packet 205, the host (receiver d) 105 changes a bit of the Bitmap 301 corresponding to the Ad 305 in the packet to a value indicating that the packet has been delivered, and checks the Bitmap 301. If the packet has been delivered to all the receivers on this occasion, the host (receiver d) 105 does not transmit a packet any more.    Patent Document 1: JP-A-2000-354063    Non-Patent Document 1: D. Johnson, C. Perkins and J. Arkko, “Mobility Support in IPv6” Request for Comment 3775 (RFC3775), June 2004    Non-Patent Document 2: C. Perkins, “IP Mobility Support”, Request for Comment 2002 (RFC2002), October 1996    Non-Patent Document 3: Internet-Draft (draft-ooms-xcast-basic-spec-05.txt)